[INFO] fetching crate spectrusty-formats 0.4.0...
[INFO] checking spectrusty-formats-0.4.0 against master#158f00a1c5175648af6f6099b075f78d1d014a28 for pr-121251
[INFO] extracting crate spectrusty-formats 0.4.0 into /workspace/builds/worker-0-tc1/source
[INFO] validating manifest of crates.io crate spectrusty-formats 0.4.0 on toolchain 158f00a1c5175648af6f6099b075f78d1d014a28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate spectrusty-formats 0.4.0
[INFO] finished tweaking crates.io crate spectrusty-formats 0.4.0
[INFO] tweaked toml for crates.io crate spectrusty-formats 0.4.0 written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded spectrusty-peripherals v0.4.0
[INFO] [stderr]   Downloaded z80emu v0.8.0
[INFO] [stderr]   Downloaded spectrusty-formats v0.4.0
[INFO] [stderr]   Downloaded spectrusty-core v0.4.0
[INFO] [stderr]   Downloaded spectrusty v0.4.0
[INFO] [stderr]   Downloaded compression v0.1.5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 032840bef52bc03ef8f2d6f2b77d0210690bfe51179165a6f3c4c32306081a66
[INFO] running `Command { std: "docker" "start" "-a" "032840bef52bc03ef8f2d6f2b77d0210690bfe51179165a6f3c4c32306081a66", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "032840bef52bc03ef8f2d6f2b77d0210690bfe51179165a6f3c4c32306081a66", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "032840bef52bc03ef8f2d6f2b77d0210690bfe51179165a6f3c4c32306081a66", kill_on_drop: false }`
[INFO] [stdout] 032840bef52bc03ef8f2d6f2b77d0210690bfe51179165a6f3c4c32306081a66
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b41c3c7cafdd17ebb9428c9cd14b3d621206aab5f3821d2d68b09b7c916b917f
[INFO] running `Command { std: "docker" "start" "-a" "b41c3c7cafdd17ebb9428c9cd14b3d621206aab5f3821d2d68b09b7c916b917f", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.78
[INFO] [stderr]    Compiling unicode-ident v1.0.12
[INFO] [stderr]     Checking cfg-if v1.0.0
[INFO] [stderr]    Compiling libc v0.2.153
[INFO] [stderr]    Compiling serde v1.0.197
[INFO] [stderr]     Checking log v0.4.21
[INFO] [stderr]    Compiling radium v0.7.0
[INFO] [stderr]     Checking lazy_static v1.4.0
[INFO] [stderr]     Checking ppv-lite86 v0.2.17
[INFO] [stderr]     Checking bitflags v1.3.2
[INFO] [stderr]     Checking tap v1.0.1
[INFO] [stderr]     Checking arrayvec v0.7.4
[INFO] [stderr]     Checking funty v2.0.0
[INFO] [stderr]     Checking base64 v0.20.0
[INFO] [stderr]     Checking minimal-lexical v0.2.1
[INFO] [stderr]    Compiling num-traits v0.2.18
[INFO] [stderr]     Checking memchr v2.7.1
[INFO] [stderr]     Checking smallvec v1.13.1
[INFO] [stderr]     Checking wyz v0.5.1
[INFO] [stderr]     Checking nom v7.1.3
[INFO] [stderr]     Checking bitvec v1.0.1
[INFO] [stderr]    Compiling quote v1.0.35
[INFO] [stderr]     Checking getrandom v0.2.12
[INFO] [stderr]    Compiling syn v2.0.52
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking compression v0.1.5
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]    Compiling serde_derive v1.0.197
[INFO] [stderr]     Checking z80emu v0.8.0
[INFO] [stderr]     Checking spectrusty-core v0.4.0
[INFO] [stderr]     Checking spectrusty-peripherals v0.4.0
[INFO] [stderr]     Checking spectrusty-formats v0.4.0
[INFO] [stderr]     Checking spectrusty-formats v0.4.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking spectrusty v0.4.0
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 12.23s
[INFO] running `Command { std: "docker" "inspect" "b41c3c7cafdd17ebb9428c9cd14b3d621206aab5f3821d2d68b09b7c916b917f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b41c3c7cafdd17ebb9428c9cd14b3d621206aab5f3821d2d68b09b7c916b917f", kill_on_drop: false }`
[INFO] [stdout] b41c3c7cafdd17ebb9428c9cd14b3d621206aab5f3821d2d68b09b7c916b917f
[INFO] checking spectrusty-formats-0.4.0 against try#b4fc5dbf0bc33be331f9d893db5b3a794f29724a+rustflags=-Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds for pr-121251
[INFO] extracting crate spectrusty-formats 0.4.0 into /workspace/builds/worker-0-tc2/source
[INFO] validating manifest of crates.io crate spectrusty-formats 0.4.0 on toolchain b4fc5dbf0bc33be331f9d893db5b3a794f29724a
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate spectrusty-formats 0.4.0
[INFO] finished tweaking crates.io crate spectrusty-formats 0.4.0
[INFO] tweaked toml for crates.io crate spectrusty-formats 0.4.0 written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 077de6b4cd7c85e2a29b05dc1f991b2b3b3039df318ed594baf082085dc57023
[INFO] running `Command { std: "docker" "start" "-a" "077de6b4cd7c85e2a29b05dc1f991b2b3b3039df318ed594baf082085dc57023", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "077de6b4cd7c85e2a29b05dc1f991b2b3b3039df318ed594baf082085dc57023", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "077de6b4cd7c85e2a29b05dc1f991b2b3b3039df318ed594baf082085dc57023", kill_on_drop: false }`
[INFO] [stdout] 077de6b4cd7c85e2a29b05dc1f991b2b3b3039df318ed594baf082085dc57023
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 290b0e3ebb9147bd7898c7e377d378b45ca0f2bf0fbdad959b01c5cd54644d28
[INFO] running `Command { std: "docker" "start" "-a" "290b0e3ebb9147bd7898c7e377d378b45ca0f2bf0fbdad959b01c5cd54644d28", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.78
[INFO] [stderr]    Compiling unicode-ident v1.0.12
[INFO] [stderr]     Checking cfg-if v1.0.0
[INFO] [stderr]    Compiling libc v0.2.153
[INFO] [stderr]    Compiling serde v1.0.197
[INFO] [stderr]    Compiling radium v0.7.0
[INFO] [stderr]     Checking log v0.4.21
[INFO] [stderr]     Checking lazy_static v1.4.0
[INFO] [stderr]     Checking bitflags v1.3.2
[INFO] [stderr]     Checking tap v1.0.1
[INFO] [stderr]     Checking arrayvec v0.7.4
[INFO] [stderr]     Checking ppv-lite86 v0.2.17
[INFO] [stderr]     Checking funty v2.0.0
[INFO] [stderr]     Checking base64 v0.20.0
[INFO] [stderr]     Checking memchr v2.7.1
[INFO] [stderr]    Compiling num-traits v0.2.18
[INFO] [stderr]     Checking minimal-lexical v0.2.1
[INFO] [stderr]     Checking smallvec v1.13.1
[INFO] [stderr]     Checking wyz v0.5.1
[INFO] [stderr]     Checking bitvec v1.0.1
[INFO] [stderr]     Checking nom v7.1.3
[INFO] [stderr]    Compiling quote v1.0.35
[INFO] [stderr]    Compiling syn v2.0.52
[INFO] [stderr]     Checking getrandom v0.2.12
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking compression v0.1.5
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]    Compiling serde_derive v1.0.197
[INFO] [stderr]     Checking z80emu v0.8.0
[INFO] [stderr]     Checking spectrusty-core v0.4.0
[INFO] [stderr]     Checking spectrusty-peripherals v0.4.0
[INFO] [stderr]     Checking spectrusty-formats v0.4.0
[INFO] [stderr]     Checking spectrusty-formats v0.4.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ay.rs:231:25
[INFO] [stdout]     |
[INFO] [stdout] 231 |         for p in rawmem[0x0000..0x0100].iter_mut() { *p = 0xC9 };
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ay.rs:232:25
[INFO] [stdout]     |
[INFO] [stdout] 232 |         for p in rawmem[0x0100..0x4000].iter_mut() { *p = 0xFF };
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ay.rs:233:25
[INFO] [stdout]     |
[INFO] [stdout] 233 |         for p in rawmem[0x4000..].iter_mut() { *p = 0x00 };
[INFO] [stdout]     |                         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ay.rs:252:16
[INFO] [stdout]     |
[INFO] [stdout] 252 |         rawmem[0x0000..player.len()].copy_from_slice(player);
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ay.rs:255:20
[INFO] [stdout]     |
[INFO] [stdout] 255 |             rawmem[PLAYER_TWO_INTERRUPT_OFFSET..PLAYER_TWO_INTERRUPT_OFFSET+intr.len()].copy_from_slice(&intr);
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ay.rs:257:16
[INFO] [stdout]     |
[INFO] [stdout] 257 |         rawmem[PLAYER_INIT_OFFSET..PLAYER_INIT_OFFSET+init.len()].copy_from_slice(&init);
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ay.rs:266:20
[INFO] [stdout]     |
[INFO] [stdout] 266 |             rawmem[address..address+data.len()].copy_from_slice(data);
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ay.rs:382:38
[INFO] [stdout]     |
[INFO] [stdout] 382 |             Some(offs) => Ok((&input[offs..], &input[..offs])),
[INFO] [stdout]     |                                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ay.rs:395:19
[INFO] [stdout]     |
[INFO] [stdout] 395 |         input.get(offset..).ok_or_else(|| Err::Failure(
[INFO] [stdout]     |                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ay.rs:434:21
[INFO] [stdout]     |
[INFO] [stdout] 434 |             raw.get(offset..)
[INFO] [stdout]     |                     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ay.rs:437:21
[INFO] [stdout]     |
[INFO] [stdout] 437 |             raw.get(offset..offset+len)
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ay.rs:441:40
[INFO] [stdout]     |
[INFO] [stdout] 441 |             let (inp, context) = (&raw[raw.len()..], "data offset exceeding file size");
[INFO] [stdout]     |                                        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/mdr.rs:438:12
[INFO] [stdout]     |
[INFO] [stdout] 438 |     target[name_len..].iter_mut().for_each(|p| *p=b' ');
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mdr.rs:447:19
[INFO] [stdout]     |
[INFO] [stdout] 447 |         self.head[HDNAME..HDNAME + 10].try_into().unwrap()
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mdr.rs:451:19
[INFO] [stdout]     |
[INFO] [stdout] 451 |         self.data[RECNAM..RECNAM + 10].try_into().unwrap()
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mdr.rs:455:26
[INFO] [stdout]     |
[INFO] [stdout] 455 |         let name = &name[0..name.len().min(10)];
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mdr.rs:456:23
[INFO] [stdout]     |
[INFO] [stdout] 456 |         if &self.data[RECNAM..RECNAM + name.len()] == name {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mdr.rs:457:30
[INFO] [stdout]     |
[INFO] [stdout] 457 |             return self.data[RECNAM + name.len()..RECNAM + 10].iter().all(|p| *p==b' ')
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mdr.rs:484:33
[INFO] [stdout]     |
[INFO] [stdout] 484 |         let reclen = &self.data[RECLEN..RECLEN + 2];
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mdr.rs:497:20
[INFO] [stdout]     |
[INFO] [stdout] 497 |         &self.data[DESCHK + 1..DCHK]
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mdr.rs:501:24
[INFO] [stdout]     |
[INFO] [stdout] 501 |         &mut self.data[DESCHK + 1..DCHK]
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mdr.rs:506:20
[INFO] [stdout]     |
[INFO] [stdout] 506 |         &self.data[DESCHK + 1..DESCHK + 1 + reclen]
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mdr.rs:510:41
[INFO] [stdout]     |
[INFO] [stdout] 510 |         let block_name = &mut self.data[RECNAM..RECNAM + 10];
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mdr.rs:523:19
[INFO] [stdout]     |
[INFO] [stdout] 523 |         self.data[RECLEN..RECLEN + 2].copy_from_slice(&reclen);
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mdr.rs:545:49
[INFO] [stdout]     |
[INFO] [stdout] 545 |         self.data[DESCHK] = checksum(&self.data[0..DESCHK]);
[INFO] [stdout]     |                                                 ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mdr.rs:546:49
[INFO] [stdout]     |
[INFO] [stdout] 546 |         self.data[DCHK]   = checksum(&self.data[DESCHK + 1..DCHK])
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mdr.rs:551:19
[INFO] [stdout]     |
[INFO] [stdout] 551 |         self.data[RECLEN..RECLEN + 2].iter_mut().for_each(|p| *p=0);
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mdr.rs:552:49
[INFO] [stdout]     |
[INFO] [stdout] 552 |         self.data[DESCHK] = checksum(&self.data[0..DESCHK]);
[INFO] [stdout]     |                                                 ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/mdr.rs:556:14
[INFO] [stdout]     |
[INFO] [stdout] 556 |         if !(1..=245).contains(&seq) {
[INFO] [stdout]     |              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mdr.rs:561:40
[INFO] [stdout]     |
[INFO] [stdout] 561 |         let head_name = &mut self.head[HDNAME..HDNAME + 10];
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mdr.rs:563:48
[INFO] [stdout]     |
[INFO] [stdout] 563 |         self.head[HDCHK] = checksum(&self.head[0..HDCHK]);
[INFO] [stdout]     |                                                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/mdr.rs:574:14
[INFO] [stdout]     |
[INFO] [stdout] 574 |         if !(1..=254).contains(&self.head[HDNUMB]) {
[INFO] [stdout]     |              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mdr.rs:580:52
[INFO] [stdout]     |
[INFO] [stdout] 580 |         if self.head[HDCHK] != checksum(&self.head[0..HDCHK]) {
[INFO] [stdout]     |                                                    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mdr.rs:583:53
[INFO] [stdout]     |
[INFO] [stdout] 583 |         if self.data[DESCHK] != checksum(&self.data[0..DESCHK]) {
[INFO] [stdout]     |                                                     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mdr.rs:587:51
[INFO] [stdout]     |
[INFO] [stdout] 587 |            self.data[DCHK] != checksum(&self.data[DESCHK+1..DCHK])
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mdr.rs:596:63
[INFO] [stdout]     |
[INFO] [stdout] 596 |             let mdrhd = <&MdrFileHeader>::try_from(&self.data[HD_00..HD_00 + HD_SIZE])?;
[INFO] [stdout]     |                                                               ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mdr.rs:607:62
[INFO] [stdout]     |
[INFO] [stdout] 607 |             m.map(|hd| Header::from(hd).with_name(&self.data[RECNAM..RECNAM + 10]))
[INFO] [stdout]     |                                                              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/mdr.rs:770:58
[INFO] [stdout]     |
[INFO] [stdout] 770 |                     tran.write_all(&sector.data_record()[HD_SIZE..])?;
[INFO] [stdout]     |                                                          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/mdr.rs:864:64
[INFO] [stdout]     |
[INFO] [stdout] 864 |                 let len = 1 + rd.read_exact_or_to_end(&mut buf[1..])?;
[INFO] [stdout]     |                                                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/mdr.rs:1045:59
[INFO] [stdout]      |
[INFO] [stdout] 1045 |         for (sector, seq) in sectors.iter_mut().rev().zip(1..254) {
[INFO] [stdout]      |                                                           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/sna.rs:153:23
[INFO] [stdout]     |
[INFO] [stdout] 153 |     mem.load_into_mem(0x4000..=0xFFFF, rd).map_err(|_| {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/sna.rs:209:30
[INFO] [stdout]     |
[INFO] [stdout] 209 |             MemoryRange::Ram(page * PAGE_SIZE..(page + 1) * PAGE_SIZE), rd.by_ref()
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/sna.rs:215:18
[INFO] [stdout]     |
[INFO] [stdout] 215 |     for page in (0..8).filter(|n| !index48.contains(n) && *n != last_page) {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/sna.rs:217:30
[INFO] [stdout]     |
[INFO] [stdout] 217 |             MemoryRange::Ram(page * PAGE_SIZE..(page + 1) * PAGE_SIZE), rd.by_ref()
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/sna.rs:256:46
[INFO] [stdout]     |
[INFO] [stdout] 256 |     loader.read_into_memory(MemoryRange::Ram(0..pc_offset), rd.by_ref())?;
[INFO] [stdout]     |                                              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/sna.rs:262:50
[INFO] [stdout]     |
[INFO] [stdout] 262 |         loader.read_into_memory(MemoryRange::Ram(rest_offset..0xC000), rd)?;
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/sna.rs:383:50
[INFO] [stdout]     |
[INFO] [stdout] 383 |             snapshot.memory_ref(MemoryRange::Ram(page * PAGE_SIZE..(page + 1) * PAGE_SIZE))?
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/sna.rs:389:18
[INFO] [stdout]     |
[INFO] [stdout] 389 |     for page in (0..8).filter(|n| !index48.contains(n) && *n != last_page) {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/sna.rs:391:50
[INFO] [stdout]     |
[INFO] [stdout] 391 |             snapshot.memory_ref(MemoryRange::Ram(page * PAGE_SIZE..(page + 1) * PAGE_SIZE))?
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/sna.rs:418:58
[INFO] [stdout]     |
[INFO] [stdout] 418 |     let mem_slice = snapshot.memory_ref(MemoryRange::Ram(0..pc_offset))?;
[INFO] [stdout]     |                                                          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/sna.rs:421:58
[INFO] [stdout]     |
[INFO] [stdout] 421 |     let mem_slice = snapshot.memory_ref(MemoryRange::Ram(pc_offset + 2..(ramtop as usize + 1) - ROMSIZE))?;
[INFO] [stdout]     |                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/tap/read.rs:87:18
[INFO] [stdout]    |
[INFO] [stdout] 87 |         for _ in 0..skip {
[INFO] [stdout]    |                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/tap/read.rs:283:48
[INFO] [stdout]     |
[INFO] [stdout] 283 |                 self.checksum ^= checksum(&buf[buf.len() - size..]);
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/tap.rs:496:27
[INFO] [stdout]     |
[INFO] [stdout] 496 |         let bname = &name[0..name.len().max(10)];
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/tap.rs:497:19
[INFO] [stdout]     |
[INFO] [stdout] 497 |         self.name[0..bname.len()].copy_from_slice(bname);
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/tap.rs:498:28
[INFO] [stdout]     |
[INFO] [stdout] 498 |         for p in self.name[bname.len()..].iter_mut() {
[INFO] [stdout]     |                            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/tap.rs:579:16
[INFO] [stdout]     |
[INFO] [stdout] 579 |         buffer[2..12].copy_from_slice(&self.name);
[INFO] [stdout]     |                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/tap.rs:580:16
[INFO] [stdout]     |
[INFO] [stdout] 580 |         buffer[12..14].copy_from_slice(&self.length.to_le_bytes());
[INFO] [stdout]     |                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/tap.rs:581:16
[INFO] [stdout]     |
[INFO] [stdout] 581 |         buffer[14..16].copy_from_slice(&self.par1);
[INFO] [stdout]     |                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/tap.rs:582:16
[INFO] [stdout]     |
[INFO] [stdout] 582 |         buffer[16..18].copy_from_slice(&self.par2);
[INFO] [stdout]     |                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/tap.rs:583:38
[INFO] [stdout]     |
[INFO] [stdout] 583 |         buffer[18] = checksum(buffer[0..18].iter());
[INFO] [stdout]     |                                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/tap.rs:596:38
[INFO] [stdout]     |
[INFO] [stdout] 596 |         name.copy_from_slice(&header[1..11]);
[INFO] [stdout]     |                                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/tap.rs:598:40
[INFO] [stdout]     |
[INFO] [stdout] 598 |         length.copy_from_slice(&header[11..13]);
[INFO] [stdout]     |                                        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/tap.rs:601:38
[INFO] [stdout]     |
[INFO] [stdout] 601 |         par1.copy_from_slice(&header[13..15]);
[INFO] [stdout]     |                                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/tap.rs:603:38
[INFO] [stdout]     |
[INFO] [stdout] 603 |         par2.copy_from_slice(&header[15..17]);
[INFO] [stdout]     |                                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/tap.rs:639:41
[INFO] [stdout]     |
[INFO] [stdout] 639 |                 Header::try_from(&bytes[1..HEADER_SIZE-1])
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/tap.rs:695:41
[INFO] [stdout]     |
[INFO] [stdout] 695 |         matches!(self.data.as_ref().get(0..2),
[INFO] [stdout]     |                                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/tap.rs:717:24
[INFO] [stdout]     |
[INFO] [stdout] 717 |         match data.get(0..2) {
[INFO] [stdout]     |                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/tap.rs:735:62
[INFO] [stdout]     |
[INFO] [stdout] 735 |             Some(String::from_utf8_lossy(&self.data.as_ref()[2..12]))
[INFO] [stdout]     |                                                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/tap.rs:748:24
[INFO] [stdout]     |
[INFO] [stdout] 748 |             Some(&data[1..data.len()-1])
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/tap.rs:761:50
[INFO] [stdout]     |
[INFO] [stdout] 761 |             if let [lo, hi] = self.data.as_ref()[12..14] {
[INFO] [stdout]     |                                                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/tap.rs:773:50
[INFO] [stdout]     |
[INFO] [stdout] 773 |             if let [lo, hi] = self.data.as_ref()[14..16] {
[INFO] [stdout]     |                                                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/tap.rs:785:50
[INFO] [stdout]     |
[INFO] [stdout] 785 |             if let [lo, hi] = self.data.as_ref()[16..18] {
[INFO] [stdout]     |                                                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/tap.rs:845:24
[INFO] [stdout]     |
[INFO] [stdout] 845 |         match data.get(position..position + 2) {
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/tap.rs:851:26
[INFO] [stdout]     |
[INFO] [stdout] 851 |                 data.get(position..pos_end).map(TapChunk::from)
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/snapshot.rs:283:29
[INFO] [stdout]     |
[INFO] [stdout] 283 |             if vc != 0 || !(-1..=31).contains(&hc) {
[INFO] [stdout]     |                             ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scr.rs:148:63
[INFO] [stdout]     |
[INFO] [stdout] 148 |                 src.read_exact(&mut self.screen_primary_mut()[0..PIXELS_SIZE])?;
[INFO] [stdout]     |                                                               ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scr.rs:149:65
[INFO] [stdout]     |
[INFO] [stdout] 149 |                 src.read_exact(&mut self.screen_secondary_mut()[0..PIXELS_SIZE])?;
[INFO] [stdout]     |                                                                 ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scr.rs:165:58
[INFO] [stdout]     |
[INFO] [stdout] 165 |                 dst.write_all(&self.screen_primary_ref()[0..PIXELS_SIZE])?;
[INFO] [stdout]     |                                                          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scr.rs:166:60
[INFO] [stdout]     |
[INFO] [stdout] 166 |                 dst.write_all(&self.screen_secondary_ref()[0..PIXELS_SIZE])?;
[INFO] [stdout]     |                                                            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/z80/compress.rs:31:40
[INFO] [stdout]    |
[INFO] [stdout] 31 |                     wr.write_all(&data[index..rep_start])?;
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/z80/compress.rs:42:28
[INFO] [stdout]    |
[INFO] [stdout] 42 |         wr.write_all(&data[index..])?;
[INFO] [stdout]    |                            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/z80/decompress.rs:41:28
[INFO] [stdout]    |
[INFO] [stdout] 41 |             buf = &mut buf[fill_len..];
[INFO] [stdout]    |                            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/z80/decompress.rs:65:31
[INFO] [stdout]    |
[INFO] [stdout] 65 |         let data = &self.data[self.cursor..];
[INFO] [stdout]    |                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/z80/decompress.rs:101:57
[INFO] [stdout]     |
[INFO] [stdout] 101 |                 if let Some(found) = memchr(0xED, &data[index..]) {
[INFO] [stdout]     |                                                         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/z80/loader.rs:77:40
[INFO] [stdout]    |
[INFO] [stdout] 77 |                  0 => MemoryRange::Rom(0..PAGE_SIZE),
[INFO] [stdout]    |                                        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/z80/loader.rs:81:85
[INFO] [stdout]    |
[INFO] [stdout] 81 |                  2 if ext.intersects(Extensions::SAM_RAM) => MemoryRange::SamRamRom(0..PAGE_SIZE),
[INFO] [stdout]    |                                                                                     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/z80/loader.rs:82:85
[INFO] [stdout]    |
[INFO] [stdout] 82 |                  3 if ext.intersects(Extensions::SAM_RAM) => MemoryRange::SamRamRom(PAGE_SIZE..2*PAGE_SIZE),
[INFO] [stdout]    |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/z80/loader.rs:83:42
[INFO] [stdout]    |
[INFO] [stdout] 83 |                  4 => MemoryRange::Ram(  PAGE_SIZE..2*PAGE_SIZE),
[INFO] [stdout]    |                                          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/z80/loader.rs:84:40
[INFO] [stdout]    |
[INFO] [stdout] 84 |                  5 => MemoryRange::Ram(2*PAGE_SIZE..3*PAGE_SIZE),
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/z80/loader.rs:85:79
[INFO] [stdout]    |
[INFO] [stdout] 85 |                  6 if ext.intersects(Extensions::SAM_RAM) => MemoryRange::Ram(3*PAGE_SIZE..4*PAGE_SIZE),
[INFO] [stdout]    |                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/z80/loader.rs:86:79
[INFO] [stdout]    |
[INFO] [stdout] 86 |                  7 if ext.intersects(Extensions::SAM_RAM) => MemoryRange::Ram(4*PAGE_SIZE..5*PAGE_SIZE),
[INFO] [stdout]    |                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/z80/loader.rs:87:40
[INFO] [stdout]    |
[INFO] [stdout] 87 |                  8 => MemoryRange::Ram(0..PAGE_SIZE),
[INFO] [stdout]    |                                        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/z80/loader.rs:96:39
[INFO] [stdout]    |
[INFO] [stdout] 96 |                 0 => MemoryRange::Rom(PAGE_SIZE..2*PAGE_SIZE),
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/z80/loader.rs:100:39
[INFO] [stdout]     |
[INFO] [stdout] 100 |                 2 => MemoryRange::Rom(0..PAGE_SIZE),
[INFO] [stdout]     |                                       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/z80/loader.rs:103:38
[INFO] [stdout]     |
[INFO] [stdout] 103 |                     MemoryRange::Ram(address..address + PAGE_SIZE)
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/z80/loader.rs:107:38
[INFO] [stdout]     |
[INFO] [stdout] 107 |                     MemoryRange::Ram(address..address + PAGE_SIZE)                    
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/z80/loader.rs:202:37
[INFO] [stdout]     |
[INFO] [stdout] 202 |             let buf = match buf.get(buf.len() - 4..) {
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/z80/loader.rs:207:54
[INFO] [stdout]     |
[INFO] [stdout] 207 |             loader.read_into_memory(MemoryRange::Ram(0..3*PAGE_SIZE), decompress)?;
[INFO] [stdout]     |                                                      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/z80/loader.rs:210:54
[INFO] [stdout]     |
[INFO] [stdout] 210 |             loader.read_into_memory(MemoryRange::Ram(0..3*PAGE_SIZE), rd)?;
[INFO] [stdout]     |                                                      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/z80/saver.rs:268:62
[INFO] [stdout]     |
[INFO] [stdout] 268 |         let mem_slice = snapshot.memory_ref(MemoryRange::Ram(page * PAGE_SIZE..(page + 1) * PAGE_SIZE))?;
[INFO] [stdout]     |                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/z80/saver.rs:312:18
[INFO] [stdout]     |
[INFO] [stdout] 312 |                 (0..8).map(|page| (page as u8 + 3, page))
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/z80/saver.rs:401:58
[INFO] [stdout]     |
[INFO] [stdout] 401 |     let mem_slice = snapshot.memory_ref(MemoryRange::Ram(0..ramend))?;
[INFO] [stdout]     |                                                          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/lib.rs:44:41
[INFO] [stdout]    |
[INFO] [stdout] 44 |                 Ok(n) => buf = &mut buf[n..],
[INFO] [stdout]    |                                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/lib.rs:94:34
[INFO] [stdout]    |
[INFO] [stdout] 94 |         rd.read_exact(&mut slice[0..limit])
[INFO] [stdout]    |                                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lib.rs:109:29
[INFO] [stdout]     |
[INFO] [stdout] 109 |         wr.write_all(&slice[0..limit])
[INFO] [stdout]     |                             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public enum definition
[INFO] [stdout]    --> src/snapshot.rs:124:9
[INFO] [stdout]     |
[INFO] [stdout] 124 |     Rom(Range<usize>),
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-D explicit-range`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public enum definition
[INFO] [stdout]    --> src/snapshot.rs:127:9
[INFO] [stdout]     |
[INFO] [stdout] 127 |     Ram(Range<usize>),
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public enum definition
[INFO] [stdout]    --> src/snapshot.rs:138:15
[INFO] [stdout]     |
[INFO] [stdout] 138 |     SamRamRom(Range<usize>),
[INFO] [stdout]     |               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking spectrusty v0.4.0
[INFO] [stdout] error: aborting due to 3 previous errors; 106 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `spectrusty-formats` (lib) due to 4 previous errors; 106 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] running `Command { std: "docker" "inspect" "290b0e3ebb9147bd7898c7e377d378b45ca0f2bf0fbdad959b01c5cd54644d28", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "290b0e3ebb9147bd7898c7e377d378b45ca0f2bf0fbdad959b01c5cd54644d28", kill_on_drop: false }`
[INFO] [stdout] 290b0e3ebb9147bd7898c7e377d378b45ca0f2bf0fbdad959b01c5cd54644d28
